/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package com.kazares.listener;

import com.kazares.i18n.I18n;
import com.kazares.properties.Catalogo;
import java.util.ArrayList;
import java.util.Collections;
import java.util.HashMap;
import javax.servlet.ServletContext;
import javax.servlet.ServletContextEvent;
import javax.servlet.ServletContextListener;
import javax.servlet.annotation.WebListener;

/**
 * Web application lifecycle listener.
 *
 * @author Alejandro Cazares
 */
@WebListener()
public class ApplicationInitContextListener implements ServletContextListener {

    ServletContext context;

    @Override
    public void contextInitialized(ServletContextEvent sce) {
        System.out.println("Inicializando el contexto...");
        context = sce.getServletContext();
        
        System.out.println("Inicializando paquete de idiomas");
        HashMap<String, String> i18n = new HashMap<String,String>();
        context.setAttribute("i18n", i18n);
        i18n.put("nombre", "Alejandro Cazares");
        i18n.put("carrera", "Ing. Sistemas computacionales");
        
        context.setAttribute("i18n1", new I18n().prop );
        
        
        
        
        context.setAttribute("estados", Catalogo.estados);
       
        ArrayList<String> aList = Collections.list(context.getAttributeNames());
        for (String key : aList) {
            System.out.println("Application scope attribute: " + key);
        }
    }

    @Override
    public void contextDestroyed(ServletContextEvent sce) {
        System.out.println("Solicitud de destrucción de contexto iniciado...");
        context = sce.getServletContext();
    }
}
